home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 3 / Info_Mac_1994-01.iso / Development / Source / MultiSession 1.04 Source / Core 27⁄June⁄1993 / CArray.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-05-29  |  739 b   |  32 lines  |  [TEXT/KAHL]

  1. /* CArray.h */
  2.  
  3. #pragma once
  4.  
  5. #include "CObject.h"
  6.  
  7. typedef struct arrayd
  8.     {
  9.         struct arrayd**        Next;
  10.         long                            NumElements;
  11.         char                            Data[];
  12.     } ArrayType;
  13.  
  14. struct    CArray    :    CObject
  15.     {
  16.         long                    BytesPerElement;
  17.         long                    ElementsPerArray;
  18.         ArrayType**        FirstBlock;
  19.  
  20.         /* */                CArray();
  21.         /* */                ~CArray();
  22.         void                IArray(long TheBytesPerElement, long TheElementsPerArray);
  23.         long                GetNumElements(void);
  24.         long                AppendElement(void);
  25.         long                InsertElement(long IndexToInsertBefore);
  26.         MyBoolean        DeleteElement(long Index);
  27.         MyBoolean        GetElement(long Index, void* PlaceToPut);
  28.         MyBoolean        PutElement(long Index, void* PlaceToGet);
  29.         void*                GetElementAddress(long Index);
  30.         MyBoolean        KillElement(void* Element);
  31.     };
  32.